﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000F9F RID: 3999
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueMiracleSelectInfo : IMessage<RogueMiracleSelectInfo>, IMessage, IEquatable<RogueMiracleSelectInfo>, IDeepCloneable<RogueMiracleSelectInfo>, IBufferMessage
	{
		// Token: 0x170032B0 RID: 12976
		// (get) Token: 0x0600B32A RID: 45866 RVA: 0x001E3F05 File Offset: 0x001E2105
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueMiracleSelectInfo> Parser
		{
			get
			{
				return RogueMiracleSelectInfo._parser;
			}
		}

		// Token: 0x170032B1 RID: 12977
		// (get) Token: 0x0600B32B RID: 45867 RVA: 0x001E3F0C File Offset: 0x001E210C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueMiracleSelectInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170032B2 RID: 12978
		// (get) Token: 0x0600B32C RID: 45868 RVA: 0x001E3F1E File Offset: 0x001E211E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueMiracleSelectInfo.Descriptor;
			}
		}

		// Token: 0x0600B32D RID: 45869 RVA: 0x001E3F25 File Offset: 0x001E2125
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMiracleSelectInfo()
		{
		}

		// Token: 0x0600B32E RID: 45870 RVA: 0x001E3F44 File Offset: 0x001E2144
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMiracleSelectInfo(RogueMiracleSelectInfo other) : this()
		{
			this.selectMiracleList_ = other.selectMiracleList_.Clone();
			this.miracleHandbookList_ = other.miracleHandbookList_.Clone();
			this.selectHintId_ = other.selectHintId_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600B32F RID: 45871 RVA: 0x001E3F96 File Offset: 0x001E2196
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMiracleSelectInfo Clone()
		{
			return new RogueMiracleSelectInfo(this);
		}

		// Token: 0x170032B3 RID: 12979
		// (get) Token: 0x0600B330 RID: 45872 RVA: 0x001E3F9E File Offset: 0x001E219E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> SelectMiracleList
		{
			get
			{
				return this.selectMiracleList_;
			}
		}

		// Token: 0x170032B4 RID: 12980
		// (get) Token: 0x0600B331 RID: 45873 RVA: 0x001E3FA6 File Offset: 0x001E21A6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> MiracleHandbookList
		{
			get
			{
				return this.miracleHandbookList_;
			}
		}

		// Token: 0x170032B5 RID: 12981
		// (get) Token: 0x0600B332 RID: 45874 RVA: 0x001E3FAE File Offset: 0x001E21AE
		// (set) Token: 0x0600B333 RID: 45875 RVA: 0x001E3FB6 File Offset: 0x001E21B6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint SelectHintId
		{
			get
			{
				return this.selectHintId_;
			}
			set
			{
				this.selectHintId_ = value;
			}
		}

		// Token: 0x0600B334 RID: 45876 RVA: 0x001E3FBF File Offset: 0x001E21BF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueMiracleSelectInfo);
		}

		// Token: 0x0600B335 RID: 45877 RVA: 0x001E3FD0 File Offset: 0x001E21D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueMiracleSelectInfo other)
		{
			return other != null && (other == this || (this.selectMiracleList_.Equals(other.selectMiracleList_) && this.miracleHandbookList_.Equals(other.miracleHandbookList_) && this.SelectHintId == other.SelectHintId && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600B336 RID: 45878 RVA: 0x001E4034 File Offset: 0x001E2234
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.selectMiracleList_.GetHashCode();
			num ^= this.miracleHandbookList_.GetHashCode();
			if (this.SelectHintId != 0U)
			{
				num ^= this.SelectHintId.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600B337 RID: 45879 RVA: 0x001E408F File Offset: 0x001E228F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600B338 RID: 45880 RVA: 0x001E4097 File Offset: 0x001E2297
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600B339 RID: 45881 RVA: 0x001E40A0 File Offset: 0x001E22A0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.SelectHintId != 0U)
			{
				output.WriteRawTag(40);
				output.WriteUInt32(this.SelectHintId);
			}
			this.miracleHandbookList_.WriteTo(ref output, RogueMiracleSelectInfo._repeated_miracleHandbookList_codec);
			this.selectMiracleList_.WriteTo(ref output, RogueMiracleSelectInfo._repeated_selectMiracleList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600B33A RID: 45882 RVA: 0x001E4100 File Offset: 0x001E2300
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.selectMiracleList_.CalculateSize(RogueMiracleSelectInfo._repeated_selectMiracleList_codec);
			num += this.miracleHandbookList_.CalculateSize(RogueMiracleSelectInfo._repeated_miracleHandbookList_codec);
			if (this.SelectHintId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.SelectHintId);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600B33B RID: 45883 RVA: 0x001E4164 File Offset: 0x001E2364
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueMiracleSelectInfo other)
		{
			if (other == null)
			{
				return;
			}
			this.selectMiracleList_.Add(other.selectMiracleList_);
			this.miracleHandbookList_.Add(other.miracleHandbookList_);
			if (other.SelectHintId != 0U)
			{
				this.SelectHintId = other.SelectHintId;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600B33C RID: 45884 RVA: 0x001E41C2 File Offset: 0x001E23C2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600B33D RID: 45885 RVA: 0x001E41CC File Offset: 0x001E23CC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 104U)
				{
					if (num == 40U)
					{
						this.SelectHintId = input.ReadUInt32();
						continue;
					}
					if (num == 104U)
					{
						goto IL_44;
					}
				}
				else
				{
					if (num == 106U)
					{
						goto IL_44;
					}
					if (num == 120U || num == 122U)
					{
						this.selectMiracleList_.AddEntriesFrom(ref input, RogueMiracleSelectInfo._repeated_selectMiracleList_codec);
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				continue;
				IL_44:
				this.miracleHandbookList_.AddEntriesFrom(ref input, RogueMiracleSelectInfo._repeated_miracleHandbookList_codec);
			}
		}

		// Token: 0x04004873 RID: 18547
		private static readonly MessageParser<RogueMiracleSelectInfo> _parser = new MessageParser<RogueMiracleSelectInfo>(() => new RogueMiracleSelectInfo());

		// Token: 0x04004874 RID: 18548
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004875 RID: 18549
		public const int SelectMiracleListFieldNumber = 15;

		// Token: 0x04004876 RID: 18550
		private static readonly FieldCodec<uint> _repeated_selectMiracleList_codec = FieldCodec.ForUInt32(122U);

		// Token: 0x04004877 RID: 18551
		private readonly RepeatedField<uint> selectMiracleList_ = new RepeatedField<uint>();

		// Token: 0x04004878 RID: 18552
		public const int MiracleHandbookListFieldNumber = 13;

		// Token: 0x04004879 RID: 18553
		private static readonly FieldCodec<uint> _repeated_miracleHandbookList_codec = FieldCodec.ForUInt32(106U);

		// Token: 0x0400487A RID: 18554
		private readonly RepeatedField<uint> miracleHandbookList_ = new RepeatedField<uint>();

		// Token: 0x0400487B RID: 18555
		public const int SelectHintIdFieldNumber = 5;

		// Token: 0x0400487C RID: 18556
		private uint selectHintId_;
	}
}
